#ifndef _INSTANCE_MANAGER_FUNCS_H
#define _INSTANCE_MANAGER_FUNCS_H

#ifdef __cplusplus
extern "C" {
#endif

#define MAX_PARAM_NUM 19

bool __stdcall InitManager();
void __stdcall ReleaseManager();

bool __stdcall OpenExcel(const char* szExcelName);
bool __stdcall SaveExcel(const char* szPath = NULL);
bool __stdcall CloseExcel();

bool __stdcall GetSheetNames(unsigned char* pSheetNames, unsigned int* len);
bool __stdcall CreateSheet(const char* szSheetName);
bool __stdcall DestroySheet(const char* sSheetName);

bool __stdcall InsertInstance(const char* szSheetName, int index);
bool __stdcall DeleteInstance(const char* szSheetName, int index);

bool __stdcall MoveUpInstance(const char* szSheetName, int index);
bool __stdcall MoveDownInstance(const char* szSheetName, int index);

int __stdcall GetInstanceCount(const char* szSheetName);

bool __stdcall SetFunctionName(const char* szSheetName, int index, const char* szFunctionName);
bool __stdcall GetFunctionName(const char* szSheetName, int index, char* szFunctionName);

bool __stdcall SetFrontCondition(const char* szSheetName, int index, const char* szFrontCondition);
bool __stdcall GetFrontCondition(const char* szSheetName, int index, char* szFrontCondition);

bool __stdcall SetDescription(const char* szSheetName, int index, const char* szDescription);
bool __stdcall GetDescription(const char* szSheetName, int index, char* szDescription);

bool __stdcall SetRearCondition(const char* szSheetName, int index, const char* szRearCondition);
bool __stdcall GetRearCondition(const char* szSheetName, int index, char* szRearCondition);

bool __stdcall SetExpectedRetValue(const char* szSheetName, int index, const char* szExpectedRetValue);
bool __stdcall GetExpectedRetValue(const char* szSheetName, int index, char* szExpectedRetValue);

bool __stdcall SetParamInputValue(const char* szSheetName, int index, int paramIndex, const char* szInputValue);
bool __stdcall GetParamInputValue(const char* szSheetName, int index, int paramIndex, char* szInputValue);

bool __stdcall SetParamExpectedValue(const char* szSheetName, int index, int paramIndex, const char* szExpectedValue);
bool __stdcall GetParamExpectedValue(const char* szSheetName, int index, int paramIndex, char* szExpectedValue);

#ifdef __cplusplus
}
#endif

#endif 
